package com.zheng.umbrella.dao.model;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class UmbrellaHardwareMachineExample implements Serializable {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private static final long serialVersionUID = 1L;

    public UmbrellaHardwareMachineExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria implements Serializable {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andCodeIsNull() {
            addCriterion("code is null");
            return (Criteria) this;
        }

        public Criteria andCodeIsNotNull() {
            addCriterion("code is not null");
            return (Criteria) this;
        }

        public Criteria andCodeEqualTo(String value) {
            addCriterion("code =", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotEqualTo(String value) {
            addCriterion("code <>", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThan(String value) {
            addCriterion("code >", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThanOrEqualTo(String value) {
            addCriterion("code >=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThan(String value) {
            addCriterion("code <", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThanOrEqualTo(String value) {
            addCriterion("code <=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLike(String value) {
            addCriterion("code like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotLike(String value) {
            addCriterion("code not like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeIn(List<String> values) {
            addCriterion("code in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotIn(List<String> values) {
            addCriterion("code not in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeBetween(String value1, String value2) {
            addCriterion("code between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotBetween(String value1, String value2) {
            addCriterion("code not between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("name is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("name is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("name =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("name <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("name >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("name >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("name <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("name <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("name like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("name not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("name in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("name not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("name between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("name not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andCapacityIsNull() {
            addCriterion("capacity is null");
            return (Criteria) this;
        }

        public Criteria andCapacityIsNotNull() {
            addCriterion("capacity is not null");
            return (Criteria) this;
        }

        public Criteria andCapacityEqualTo(Integer value) {
            addCriterion("capacity =", value, "capacity");
            return (Criteria) this;
        }

        public Criteria andCapacityNotEqualTo(Integer value) {
            addCriterion("capacity <>", value, "capacity");
            return (Criteria) this;
        }

        public Criteria andCapacityGreaterThan(Integer value) {
            addCriterion("capacity >", value, "capacity");
            return (Criteria) this;
        }

        public Criteria andCapacityGreaterThanOrEqualTo(Integer value) {
            addCriterion("capacity >=", value, "capacity");
            return (Criteria) this;
        }

        public Criteria andCapacityLessThan(Integer value) {
            addCriterion("capacity <", value, "capacity");
            return (Criteria) this;
        }

        public Criteria andCapacityLessThanOrEqualTo(Integer value) {
            addCriterion("capacity <=", value, "capacity");
            return (Criteria) this;
        }

        public Criteria andCapacityIn(List<Integer> values) {
            addCriterion("capacity in", values, "capacity");
            return (Criteria) this;
        }

        public Criteria andCapacityNotIn(List<Integer> values) {
            addCriterion("capacity not in", values, "capacity");
            return (Criteria) this;
        }

        public Criteria andCapacityBetween(Integer value1, Integer value2) {
            addCriterion("capacity between", value1, value2, "capacity");
            return (Criteria) this;
        }

        public Criteria andCapacityNotBetween(Integer value1, Integer value2) {
            addCriterion("capacity not between", value1, value2, "capacity");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("type is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("type is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Integer value) {
            addCriterion("type =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Integer value) {
            addCriterion("type <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Integer value) {
            addCriterion("type >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("type >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Integer value) {
            addCriterion("type <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Integer value) {
            addCriterion("type <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Integer> values) {
            addCriterion("type in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Integer> values) {
            addCriterion("type not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Integer value1, Integer value2) {
            addCriterion("type between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("type not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andFaultstatusIsNull() {
            addCriterion("faultstatus is null");
            return (Criteria) this;
        }

        public Criteria andFaultstatusIsNotNull() {
            addCriterion("faultstatus is not null");
            return (Criteria) this;
        }

        public Criteria andFaultstatusEqualTo(Integer value) {
            addCriterion("faultstatus =", value, "faultstatus");
            return (Criteria) this;
        }

        public Criteria andFaultstatusNotEqualTo(Integer value) {
            addCriterion("faultstatus <>", value, "faultstatus");
            return (Criteria) this;
        }

        public Criteria andFaultstatusGreaterThan(Integer value) {
            addCriterion("faultstatus >", value, "faultstatus");
            return (Criteria) this;
        }

        public Criteria andFaultstatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("faultstatus >=", value, "faultstatus");
            return (Criteria) this;
        }

        public Criteria andFaultstatusLessThan(Integer value) {
            addCriterion("faultstatus <", value, "faultstatus");
            return (Criteria) this;
        }

        public Criteria andFaultstatusLessThanOrEqualTo(Integer value) {
            addCriterion("faultstatus <=", value, "faultstatus");
            return (Criteria) this;
        }

        public Criteria andFaultstatusIn(List<Integer> values) {
            addCriterion("faultstatus in", values, "faultstatus");
            return (Criteria) this;
        }

        public Criteria andFaultstatusNotIn(List<Integer> values) {
            addCriterion("faultstatus not in", values, "faultstatus");
            return (Criteria) this;
        }

        public Criteria andFaultstatusBetween(Integer value1, Integer value2) {
            addCriterion("faultstatus between", value1, value2, "faultstatus");
            return (Criteria) this;
        }

        public Criteria andFaultstatusNotBetween(Integer value1, Integer value2) {
            addCriterion("faultstatus not between", value1, value2, "faultstatus");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeIsNull() {
            addCriterion("launchtime is null");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeIsNotNull() {
            addCriterion("launchtime is not null");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeEqualTo(Long value) {
            addCriterion("launchtime =", value, "launchtime");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeNotEqualTo(Long value) {
            addCriterion("launchtime <>", value, "launchtime");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeGreaterThan(Long value) {
            addCriterion("launchtime >", value, "launchtime");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeGreaterThanOrEqualTo(Long value) {
            addCriterion("launchtime >=", value, "launchtime");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeLessThan(Long value) {
            addCriterion("launchtime <", value, "launchtime");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeLessThanOrEqualTo(Long value) {
            addCriterion("launchtime <=", value, "launchtime");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeIn(List<Long> values) {
            addCriterion("launchtime in", values, "launchtime");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeNotIn(List<Long> values) {
            addCriterion("launchtime not in", values, "launchtime");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeBetween(Long value1, Long value2) {
            addCriterion("launchtime between", value1, value2, "launchtime");
            return (Criteria) this;
        }

        public Criteria andLaunchtimeNotBetween(Long value1, Long value2) {
            addCriterion("launchtime not between", value1, value2, "launchtime");
            return (Criteria) this;
        }

        public Criteria andAgentIdIsNull() {
            addCriterion("agent_id is null");
            return (Criteria) this;
        }

        public Criteria andAgentIdIsNotNull() {
            addCriterion("agent_id is not null");
            return (Criteria) this;
        }

        public Criteria andAgentIdEqualTo(Integer value) {
            addCriterion("agent_id =", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotEqualTo(Integer value) {
            addCriterion("agent_id <>", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdGreaterThan(Integer value) {
            addCriterion("agent_id >", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("agent_id >=", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdLessThan(Integer value) {
            addCriterion("agent_id <", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdLessThanOrEqualTo(Integer value) {
            addCriterion("agent_id <=", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdIn(List<Integer> values) {
            addCriterion("agent_id in", values, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotIn(List<Integer> values) {
            addCriterion("agent_id not in", values, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdBetween(Integer value1, Integer value2) {
            addCriterion("agent_id between", value1, value2, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotBetween(Integer value1, Integer value2) {
            addCriterion("agent_id not between", value1, value2, "agentId");
            return (Criteria) this;
        }

        public Criteria andCountryIsNull() {
            addCriterion("country is null");
            return (Criteria) this;
        }

        public Criteria andCountryIsNotNull() {
            addCriterion("country is not null");
            return (Criteria) this;
        }

        public Criteria andCountryEqualTo(String value) {
            addCriterion("country =", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryNotEqualTo(String value) {
            addCriterion("country <>", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryGreaterThan(String value) {
            addCriterion("country >", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryGreaterThanOrEqualTo(String value) {
            addCriterion("country >=", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryLessThan(String value) {
            addCriterion("country <", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryLessThanOrEqualTo(String value) {
            addCriterion("country <=", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryLike(String value) {
            addCriterion("country like", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryNotLike(String value) {
            addCriterion("country not like", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryIn(List<String> values) {
            addCriterion("country in", values, "country");
            return (Criteria) this;
        }

        public Criteria andCountryNotIn(List<String> values) {
            addCriterion("country not in", values, "country");
            return (Criteria) this;
        }

        public Criteria andCountryBetween(String value1, String value2) {
            addCriterion("country between", value1, value2, "country");
            return (Criteria) this;
        }

        public Criteria andCountryNotBetween(String value1, String value2) {
            addCriterion("country not between", value1, value2, "country");
            return (Criteria) this;
        }

        public Criteria andProvinceIsNull() {
            addCriterion("province is null");
            return (Criteria) this;
        }

        public Criteria andProvinceIsNotNull() {
            addCriterion("province is not null");
            return (Criteria) this;
        }

        public Criteria andProvinceEqualTo(String value) {
            addCriterion("province =", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceNotEqualTo(String value) {
            addCriterion("province <>", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceGreaterThan(String value) {
            addCriterion("province >", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceGreaterThanOrEqualTo(String value) {
            addCriterion("province >=", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceLessThan(String value) {
            addCriterion("province <", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceLessThanOrEqualTo(String value) {
            addCriterion("province <=", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceLike(String value) {
            addCriterion("province like", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceNotLike(String value) {
            addCriterion("province not like", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceIn(List<String> values) {
            addCriterion("province in", values, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceNotIn(List<String> values) {
            addCriterion("province not in", values, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceBetween(String value1, String value2) {
            addCriterion("province between", value1, value2, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceNotBetween(String value1, String value2) {
            addCriterion("province not between", value1, value2, "province");
            return (Criteria) this;
        }

        public Criteria andCityIsNull() {
            addCriterion("city is null");
            return (Criteria) this;
        }

        public Criteria andCityIsNotNull() {
            addCriterion("city is not null");
            return (Criteria) this;
        }

        public Criteria andCityEqualTo(String value) {
            addCriterion("city =", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotEqualTo(String value) {
            addCriterion("city <>", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityGreaterThan(String value) {
            addCriterion("city >", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityGreaterThanOrEqualTo(String value) {
            addCriterion("city >=", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityLessThan(String value) {
            addCriterion("city <", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityLessThanOrEqualTo(String value) {
            addCriterion("city <=", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityLike(String value) {
            addCriterion("city like", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotLike(String value) {
            addCriterion("city not like", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityIn(List<String> values) {
            addCriterion("city in", values, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotIn(List<String> values) {
            addCriterion("city not in", values, "city");
            return (Criteria) this;
        }

        public Criteria andCityBetween(String value1, String value2) {
            addCriterion("city between", value1, value2, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotBetween(String value1, String value2) {
            addCriterion("city not between", value1, value2, "city");
            return (Criteria) this;
        }

        public Criteria andAddressIsNull() {
            addCriterion("address is null");
            return (Criteria) this;
        }

        public Criteria andAddressIsNotNull() {
            addCriterion("address is not null");
            return (Criteria) this;
        }

        public Criteria andAddressEqualTo(String value) {
            addCriterion("address =", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotEqualTo(String value) {
            addCriterion("address <>", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThan(String value) {
            addCriterion("address >", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThanOrEqualTo(String value) {
            addCriterion("address >=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThan(String value) {
            addCriterion("address <", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThanOrEqualTo(String value) {
            addCriterion("address <=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLike(String value) {
            addCriterion("address like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotLike(String value) {
            addCriterion("address not like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressIn(List<String> values) {
            addCriterion("address in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotIn(List<String> values) {
            addCriterion("address not in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressBetween(String value1, String value2) {
            addCriterion("address between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotBetween(String value1, String value2) {
            addCriterion("address not between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andOemIdIsNull() {
            addCriterion("oem_id is null");
            return (Criteria) this;
        }

        public Criteria andOemIdIsNotNull() {
            addCriterion("oem_id is not null");
            return (Criteria) this;
        }

        public Criteria andOemIdEqualTo(Integer value) {
            addCriterion("oem_id =", value, "oemId");
            return (Criteria) this;
        }

        public Criteria andOemIdNotEqualTo(Integer value) {
            addCriterion("oem_id <>", value, "oemId");
            return (Criteria) this;
        }

        public Criteria andOemIdGreaterThan(Integer value) {
            addCriterion("oem_id >", value, "oemId");
            return (Criteria) this;
        }

        public Criteria andOemIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("oem_id >=", value, "oemId");
            return (Criteria) this;
        }

        public Criteria andOemIdLessThan(Integer value) {
            addCriterion("oem_id <", value, "oemId");
            return (Criteria) this;
        }

        public Criteria andOemIdLessThanOrEqualTo(Integer value) {
            addCriterion("oem_id <=", value, "oemId");
            return (Criteria) this;
        }

        public Criteria andOemIdIn(List<Integer> values) {
            addCriterion("oem_id in", values, "oemId");
            return (Criteria) this;
        }

        public Criteria andOemIdNotIn(List<Integer> values) {
            addCriterion("oem_id not in", values, "oemId");
            return (Criteria) this;
        }

        public Criteria andOemIdBetween(Integer value1, Integer value2) {
            addCriterion("oem_id between", value1, value2, "oemId");
            return (Criteria) this;
        }

        public Criteria andOemIdNotBetween(Integer value1, Integer value2) {
            addCriterion("oem_id not between", value1, value2, "oemId");
            return (Criteria) this;
        }

        public Criteria andLongitudeIsNull() {
            addCriterion("longitude is null");
            return (Criteria) this;
        }

        public Criteria andLongitudeIsNotNull() {
            addCriterion("longitude is not null");
            return (Criteria) this;
        }

        public Criteria andLongitudeEqualTo(BigDecimal value) {
            addCriterion("longitude =", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeNotEqualTo(BigDecimal value) {
            addCriterion("longitude <>", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeGreaterThan(BigDecimal value) {
            addCriterion("longitude >", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("longitude >=", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeLessThan(BigDecimal value) {
            addCriterion("longitude <", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeLessThanOrEqualTo(BigDecimal value) {
            addCriterion("longitude <=", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeIn(List<BigDecimal> values) {
            addCriterion("longitude in", values, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeNotIn(List<BigDecimal> values) {
            addCriterion("longitude not in", values, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("longitude between", value1, value2, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("longitude not between", value1, value2, "longitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeIsNull() {
            addCriterion("latitude is null");
            return (Criteria) this;
        }

        public Criteria andLatitudeIsNotNull() {
            addCriterion("latitude is not null");
            return (Criteria) this;
        }

        public Criteria andLatitudeEqualTo(BigDecimal value) {
            addCriterion("latitude =", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeNotEqualTo(BigDecimal value) {
            addCriterion("latitude <>", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeGreaterThan(BigDecimal value) {
            addCriterion("latitude >", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("latitude >=", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeLessThan(BigDecimal value) {
            addCriterion("latitude <", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeLessThanOrEqualTo(BigDecimal value) {
            addCriterion("latitude <=", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeIn(List<BigDecimal> values) {
            addCriterion("latitude in", values, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeNotIn(List<BigDecimal> values) {
            addCriterion("latitude not in", values, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("latitude between", value1, value2, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("latitude not between", value1, value2, "latitude");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNull() {
            addCriterion("description is null");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNotNull() {
            addCriterion("description is not null");
            return (Criteria) this;
        }

        public Criteria andDescriptionEqualTo(String value) {
            addCriterion("description =", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotEqualTo(String value) {
            addCriterion("description <>", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThan(String value) {
            addCriterion("description >", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("description >=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThan(String value) {
            addCriterion("description <", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThanOrEqualTo(String value) {
            addCriterion("description <=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLike(String value) {
            addCriterion("description like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotLike(String value) {
            addCriterion("description not like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionIn(List<String> values) {
            addCriterion("description in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotIn(List<String> values) {
            addCriterion("description not in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionBetween(String value1, String value2) {
            addCriterion("description between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotBetween(String value1, String value2) {
            addCriterion("description not between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andFlagIsNull() {
            addCriterion("flag is null");
            return (Criteria) this;
        }

        public Criteria andFlagIsNotNull() {
            addCriterion("flag is not null");
            return (Criteria) this;
        }

        public Criteria andFlagEqualTo(Integer value) {
            addCriterion("flag =", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagNotEqualTo(Integer value) {
            addCriterion("flag <>", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagGreaterThan(Integer value) {
            addCriterion("flag >", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagGreaterThanOrEqualTo(Integer value) {
            addCriterion("flag >=", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagLessThan(Integer value) {
            addCriterion("flag <", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagLessThanOrEqualTo(Integer value) {
            addCriterion("flag <=", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagIn(List<Integer> values) {
            addCriterion("flag in", values, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagNotIn(List<Integer> values) {
            addCriterion("flag not in", values, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagBetween(Integer value1, Integer value2) {
            addCriterion("flag between", value1, value2, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagNotBetween(Integer value1, Integer value2) {
            addCriterion("flag not between", value1, value2, "flag");
            return (Criteria) this;
        }

        public Criteria andCuserIsNull() {
            addCriterion("cuser is null");
            return (Criteria) this;
        }

        public Criteria andCuserIsNotNull() {
            addCriterion("cuser is not null");
            return (Criteria) this;
        }

        public Criteria andCuserEqualTo(String value) {
            addCriterion("cuser =", value, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserNotEqualTo(String value) {
            addCriterion("cuser <>", value, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserGreaterThan(String value) {
            addCriterion("cuser >", value, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserGreaterThanOrEqualTo(String value) {
            addCriterion("cuser >=", value, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserLessThan(String value) {
            addCriterion("cuser <", value, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserLessThanOrEqualTo(String value) {
            addCriterion("cuser <=", value, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserLike(String value) {
            addCriterion("cuser like", value, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserNotLike(String value) {
            addCriterion("cuser not like", value, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserIn(List<String> values) {
            addCriterion("cuser in", values, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserNotIn(List<String> values) {
            addCriterion("cuser not in", values, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserBetween(String value1, String value2) {
            addCriterion("cuser between", value1, value2, "cuser");
            return (Criteria) this;
        }

        public Criteria andCuserNotBetween(String value1, String value2) {
            addCriterion("cuser not between", value1, value2, "cuser");
            return (Criteria) this;
        }

        public Criteria andCtimeIsNull() {
            addCriterion("ctime is null");
            return (Criteria) this;
        }

        public Criteria andCtimeIsNotNull() {
            addCriterion("ctime is not null");
            return (Criteria) this;
        }

        public Criteria andCtimeEqualTo(Long value) {
            addCriterion("ctime =", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeNotEqualTo(Long value) {
            addCriterion("ctime <>", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeGreaterThan(Long value) {
            addCriterion("ctime >", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeGreaterThanOrEqualTo(Long value) {
            addCriterion("ctime >=", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeLessThan(Long value) {
            addCriterion("ctime <", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeLessThanOrEqualTo(Long value) {
            addCriterion("ctime <=", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeIn(List<Long> values) {
            addCriterion("ctime in", values, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeNotIn(List<Long> values) {
            addCriterion("ctime not in", values, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeBetween(Long value1, Long value2) {
            addCriterion("ctime between", value1, value2, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeNotBetween(Long value1, Long value2) {
            addCriterion("ctime not between", value1, value2, "ctime");
            return (Criteria) this;
        }

        public Criteria andRemainderIsNull() {
            addCriterion("remainder is null");
            return (Criteria) this;
        }

        public Criteria andRemainderIsNotNull() {
            addCriterion("remainder is not null");
            return (Criteria) this;
        }

        public Criteria andRemainderEqualTo(Integer value) {
            addCriterion("remainder =", value, "remainder");
            return (Criteria) this;
        }

        public Criteria andRemainderNotEqualTo(Integer value) {
            addCriterion("remainder <>", value, "remainder");
            return (Criteria) this;
        }

        public Criteria andRemainderGreaterThan(Integer value) {
            addCriterion("remainder >", value, "remainder");
            return (Criteria) this;
        }

        public Criteria andRemainderGreaterThanOrEqualTo(Integer value) {
            addCriterion("remainder >=", value, "remainder");
            return (Criteria) this;
        }

        public Criteria andRemainderLessThan(Integer value) {
            addCriterion("remainder <", value, "remainder");
            return (Criteria) this;
        }

        public Criteria andRemainderLessThanOrEqualTo(Integer value) {
            addCriterion("remainder <=", value, "remainder");
            return (Criteria) this;
        }

        public Criteria andRemainderIn(List<Integer> values) {
            addCriterion("remainder in", values, "remainder");
            return (Criteria) this;
        }

        public Criteria andRemainderNotIn(List<Integer> values) {
            addCriterion("remainder not in", values, "remainder");
            return (Criteria) this;
        }

        public Criteria andRemainderBetween(Integer value1, Integer value2) {
            addCriterion("remainder between", value1, value2, "remainder");
            return (Criteria) this;
        }

        public Criteria andRemainderNotBetween(Integer value1, Integer value2) {
            addCriterion("remainder not between", value1, value2, "remainder");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdIsNull() {
            addCriterion("rent_rule_id is null");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdIsNotNull() {
            addCriterion("rent_rule_id is not null");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdEqualTo(Integer value) {
            addCriterion("rent_rule_id =", value, "rentRuleId");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdNotEqualTo(Integer value) {
            addCriterion("rent_rule_id <>", value, "rentRuleId");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdGreaterThan(Integer value) {
            addCriterion("rent_rule_id >", value, "rentRuleId");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("rent_rule_id >=", value, "rentRuleId");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdLessThan(Integer value) {
            addCriterion("rent_rule_id <", value, "rentRuleId");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdLessThanOrEqualTo(Integer value) {
            addCriterion("rent_rule_id <=", value, "rentRuleId");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdIn(List<Integer> values) {
            addCriterion("rent_rule_id in", values, "rentRuleId");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdNotIn(List<Integer> values) {
            addCriterion("rent_rule_id not in", values, "rentRuleId");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdBetween(Integer value1, Integer value2) {
            addCriterion("rent_rule_id between", value1, value2, "rentRuleId");
            return (Criteria) this;
        }

        public Criteria andRentRuleIdNotBetween(Integer value1, Integer value2) {
            addCriterion("rent_rule_id not between", value1, value2, "rentRuleId");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportIsNull() {
            addCriterion("longitude_report is null");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportIsNotNull() {
            addCriterion("longitude_report is not null");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportEqualTo(BigDecimal value) {
            addCriterion("longitude_report =", value, "longitudeReport");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportNotEqualTo(BigDecimal value) {
            addCriterion("longitude_report <>", value, "longitudeReport");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportGreaterThan(BigDecimal value) {
            addCriterion("longitude_report >", value, "longitudeReport");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("longitude_report >=", value, "longitudeReport");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportLessThan(BigDecimal value) {
            addCriterion("longitude_report <", value, "longitudeReport");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportLessThanOrEqualTo(BigDecimal value) {
            addCriterion("longitude_report <=", value, "longitudeReport");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportIn(List<BigDecimal> values) {
            addCriterion("longitude_report in", values, "longitudeReport");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportNotIn(List<BigDecimal> values) {
            addCriterion("longitude_report not in", values, "longitudeReport");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("longitude_report between", value1, value2, "longitudeReport");
            return (Criteria) this;
        }

        public Criteria andLongitudeReportNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("longitude_report not between", value1, value2, "longitudeReport");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportIsNull() {
            addCriterion("latitude_report is null");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportIsNotNull() {
            addCriterion("latitude_report is not null");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportEqualTo(BigDecimal value) {
            addCriterion("latitude_report =", value, "latitudeReport");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportNotEqualTo(BigDecimal value) {
            addCriterion("latitude_report <>", value, "latitudeReport");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportGreaterThan(BigDecimal value) {
            addCriterion("latitude_report >", value, "latitudeReport");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("latitude_report >=", value, "latitudeReport");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportLessThan(BigDecimal value) {
            addCriterion("latitude_report <", value, "latitudeReport");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportLessThanOrEqualTo(BigDecimal value) {
            addCriterion("latitude_report <=", value, "latitudeReport");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportIn(List<BigDecimal> values) {
            addCriterion("latitude_report in", values, "latitudeReport");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportNotIn(List<BigDecimal> values) {
            addCriterion("latitude_report not in", values, "latitudeReport");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("latitude_report between", value1, value2, "latitudeReport");
            return (Criteria) this;
        }

        public Criteria andLatitudeReportNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("latitude_report not between", value1, value2, "latitudeReport");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportIsNull() {
            addCriterion("lasttime_report is null");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportIsNotNull() {
            addCriterion("lasttime_report is not null");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportEqualTo(Date value) {
            addCriterion("lasttime_report =", value, "lasttimeReport");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportNotEqualTo(Date value) {
            addCriterion("lasttime_report <>", value, "lasttimeReport");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportGreaterThan(Date value) {
            addCriterion("lasttime_report >", value, "lasttimeReport");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportGreaterThanOrEqualTo(Date value) {
            addCriterion("lasttime_report >=", value, "lasttimeReport");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportLessThan(Date value) {
            addCriterion("lasttime_report <", value, "lasttimeReport");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportLessThanOrEqualTo(Date value) {
            addCriterion("lasttime_report <=", value, "lasttimeReport");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportIn(List<Date> values) {
            addCriterion("lasttime_report in", values, "lasttimeReport");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportNotIn(List<Date> values) {
            addCriterion("lasttime_report not in", values, "lasttimeReport");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportBetween(Date value1, Date value2) {
            addCriterion("lasttime_report between", value1, value2, "lasttimeReport");
            return (Criteria) this;
        }

        public Criteria andLasttimeReportNotBetween(Date value1, Date value2) {
            addCriterion("lasttime_report not between", value1, value2, "lasttimeReport");
            return (Criteria) this;
        }

        public Criteria andElectricquantityIsNull() {
            addCriterion("electricQuantity is null");
            return (Criteria) this;
        }

        public Criteria andElectricquantityIsNotNull() {
            addCriterion("electricQuantity is not null");
            return (Criteria) this;
        }

        public Criteria andElectricquantityEqualTo(BigDecimal value) {
            addCriterion("electricQuantity =", value, "electricquantity");
            return (Criteria) this;
        }

        public Criteria andElectricquantityNotEqualTo(BigDecimal value) {
            addCriterion("electricQuantity <>", value, "electricquantity");
            return (Criteria) this;
        }

        public Criteria andElectricquantityGreaterThan(BigDecimal value) {
            addCriterion("electricQuantity >", value, "electricquantity");
            return (Criteria) this;
        }

        public Criteria andElectricquantityGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("electricQuantity >=", value, "electricquantity");
            return (Criteria) this;
        }

        public Criteria andElectricquantityLessThan(BigDecimal value) {
            addCriterion("electricQuantity <", value, "electricquantity");
            return (Criteria) this;
        }

        public Criteria andElectricquantityLessThanOrEqualTo(BigDecimal value) {
            addCriterion("electricQuantity <=", value, "electricquantity");
            return (Criteria) this;
        }

        public Criteria andElectricquantityIn(List<BigDecimal> values) {
            addCriterion("electricQuantity in", values, "electricquantity");
            return (Criteria) this;
        }

        public Criteria andElectricquantityNotIn(List<BigDecimal> values) {
            addCriterion("electricQuantity not in", values, "electricquantity");
            return (Criteria) this;
        }

        public Criteria andElectricquantityBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("electricQuantity between", value1, value2, "electricquantity");
            return (Criteria) this;
        }

        public Criteria andElectricquantityNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("electricQuantity not between", value1, value2, "electricquantity");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdIsNull() {
            addCriterion("rule_deposit_id is null");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdIsNotNull() {
            addCriterion("rule_deposit_id is not null");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdEqualTo(Integer value) {
            addCriterion("rule_deposit_id =", value, "ruleDepositId");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdNotEqualTo(Integer value) {
            addCriterion("rule_deposit_id <>", value, "ruleDepositId");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdGreaterThan(Integer value) {
            addCriterion("rule_deposit_id >", value, "ruleDepositId");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("rule_deposit_id >=", value, "ruleDepositId");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdLessThan(Integer value) {
            addCriterion("rule_deposit_id <", value, "ruleDepositId");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdLessThanOrEqualTo(Integer value) {
            addCriterion("rule_deposit_id <=", value, "ruleDepositId");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdIn(List<Integer> values) {
            addCriterion("rule_deposit_id in", values, "ruleDepositId");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdNotIn(List<Integer> values) {
            addCriterion("rule_deposit_id not in", values, "ruleDepositId");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdBetween(Integer value1, Integer value2) {
            addCriterion("rule_deposit_id between", value1, value2, "ruleDepositId");
            return (Criteria) this;
        }

        public Criteria andRuleDepositIdNotBetween(Integer value1, Integer value2) {
            addCriterion("rule_deposit_id not between", value1, value2, "ruleDepositId");
            return (Criteria) this;
        }

        public Criteria andPathcountIsNull() {
            addCriterion("pathcount is null");
            return (Criteria) this;
        }

        public Criteria andPathcountIsNotNull() {
            addCriterion("pathcount is not null");
            return (Criteria) this;
        }

        public Criteria andPathcountEqualTo(Integer value) {
            addCriterion("pathcount =", value, "pathcount");
            return (Criteria) this;
        }

        public Criteria andPathcountNotEqualTo(Integer value) {
            addCriterion("pathcount <>", value, "pathcount");
            return (Criteria) this;
        }

        public Criteria andPathcountGreaterThan(Integer value) {
            addCriterion("pathcount >", value, "pathcount");
            return (Criteria) this;
        }

        public Criteria andPathcountGreaterThanOrEqualTo(Integer value) {
            addCriterion("pathcount >=", value, "pathcount");
            return (Criteria) this;
        }

        public Criteria andPathcountLessThan(Integer value) {
            addCriterion("pathcount <", value, "pathcount");
            return (Criteria) this;
        }

        public Criteria andPathcountLessThanOrEqualTo(Integer value) {
            addCriterion("pathcount <=", value, "pathcount");
            return (Criteria) this;
        }

        public Criteria andPathcountIn(List<Integer> values) {
            addCriterion("pathcount in", values, "pathcount");
            return (Criteria) this;
        }

        public Criteria andPathcountNotIn(List<Integer> values) {
            addCriterion("pathcount not in", values, "pathcount");
            return (Criteria) this;
        }

        public Criteria andPathcountBetween(Integer value1, Integer value2) {
            addCriterion("pathcount between", value1, value2, "pathcount");
            return (Criteria) this;
        }

        public Criteria andPathcountNotBetween(Integer value1, Integer value2) {
            addCriterion("pathcount not between", value1, value2, "pathcount");
            return (Criteria) this;
        }

        public Criteria andHardwareversionIsNull() {
            addCriterion("hardwareVersion is null");
            return (Criteria) this;
        }

        public Criteria andHardwareversionIsNotNull() {
            addCriterion("hardwareVersion is not null");
            return (Criteria) this;
        }

        public Criteria andHardwareversionEqualTo(String value) {
            addCriterion("hardwareVersion =", value, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionNotEqualTo(String value) {
            addCriterion("hardwareVersion <>", value, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionGreaterThan(String value) {
            addCriterion("hardwareVersion >", value, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionGreaterThanOrEqualTo(String value) {
            addCriterion("hardwareVersion >=", value, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionLessThan(String value) {
            addCriterion("hardwareVersion <", value, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionLessThanOrEqualTo(String value) {
            addCriterion("hardwareVersion <=", value, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionLike(String value) {
            addCriterion("hardwareVersion like", value, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionNotLike(String value) {
            addCriterion("hardwareVersion not like", value, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionIn(List<String> values) {
            addCriterion("hardwareVersion in", values, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionNotIn(List<String> values) {
            addCriterion("hardwareVersion not in", values, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionBetween(String value1, String value2) {
            addCriterion("hardwareVersion between", value1, value2, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andHardwareversionNotBetween(String value1, String value2) {
            addCriterion("hardwareVersion not between", value1, value2, "hardwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionIsNull() {
            addCriterion("softwareVersion is null");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionIsNotNull() {
            addCriterion("softwareVersion is not null");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionEqualTo(String value) {
            addCriterion("softwareVersion =", value, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionNotEqualTo(String value) {
            addCriterion("softwareVersion <>", value, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionGreaterThan(String value) {
            addCriterion("softwareVersion >", value, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionGreaterThanOrEqualTo(String value) {
            addCriterion("softwareVersion >=", value, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionLessThan(String value) {
            addCriterion("softwareVersion <", value, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionLessThanOrEqualTo(String value) {
            addCriterion("softwareVersion <=", value, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionLike(String value) {
            addCriterion("softwareVersion like", value, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionNotLike(String value) {
            addCriterion("softwareVersion not like", value, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionIn(List<String> values) {
            addCriterion("softwareVersion in", values, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionNotIn(List<String> values) {
            addCriterion("softwareVersion not in", values, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionBetween(String value1, String value2) {
            addCriterion("softwareVersion between", value1, value2, "softwareversion");
            return (Criteria) this;
        }

        public Criteria andSoftwareversionNotBetween(String value1, String value2) {
            addCriterion("softwareVersion not between", value1, value2, "softwareversion");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria implements Serializable {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion implements Serializable {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}